package com.hpli.infrastructure.persistent.po;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * Table: user_raffle_order_000
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class UserRaffleOrder {
    /**
     * Column: id
     * Type: INT UNSIGNED
     */
    private Integer id;

    /**
     * Column: user_id
     * Type: VARCHAR(32)
     * Remark: 用户ID
     */
    private String userId;

    /**
     * Column: activity_id
     * Type: BIGINT
     * Remark: 活动ID
     */
    private Long activityId;

    /**
     * Column: activity_name
     * Type: VARCHAR(64)
     * Remark: 活动名称
     */
    private String activityName;

    /**
     * Column: strategy_id
     * Type: BIGINT
     * Remark: 抽奖策略ID
     */
    private Long strategyId;

    /**
     * Column: order_id
     * Type: VARCHAR(12)
     * Remark: 订单ID
     */
    private String orderId;

    /**
     * Column: order_time
     * Type: DATETIME
     * Remark: 下单时间
     */
    private Date orderTime;

    /**
     * Column: order_state
     * Type: VARCHAR(16)
     * Default value: create
     * Remark: 订单状态；create-创建、used-已使用、cancel-已作废
     */
    private String orderState;

    /**
     * Column: create_time
     * Type: DATETIME
     * Default value: CURRENT_TIMESTAMP
     * Remark: 创建时间
     */
    private Date createTime;

    /**
     * Column: update_time
     * Type: DATETIME
     * Default value: CURRENT_TIMESTAMP
     * Remark: 更新时间
     */
    private Date updateTime;
}